package com.ruoyi.system.service.impl;

import com.ruoyi.system.domain.UserMedal;
import com.ruoyi.system.mapper.UserMedalMapper;
import com.ruoyi.system.service.IUserMedalService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 用户勋章Service业务层处理
 * 
 * @author ruoyi
 * @date 2025-04-17
 */
@Service
public class UserMedalServiceImpl implements IUserMedalService 
{
    @Autowired
    private UserMedalMapper userMedalMapper;

    /**
     * 查询用户勋章
     * 
     * @param id 用户勋章主键
     * @return 用户勋章
     */
    @Override
    public UserMedal selectUserMedalById(Long id)
    {
        return userMedalMapper.selectUserMedalById(id);
    }

    /**
     * 查询用户勋章列表
     * 
     * @param userMedal 用户勋章
     * @return 用户勋章
     */
    @Override
    public List<UserMedal> selectUserMedalList(UserMedal userMedal)
    {
        return userMedalMapper.selectUserMedalList(userMedal);
    }

    /**
     * 新增用户勋章
     * 
     * @param userMedal 用户勋章
     * @return 结果
     */
    @Override
    public int insertUserMedal(UserMedal userMedal)
    {
        return userMedalMapper.insertUserMedal(userMedal);
    }

    /**
     * 修改用户勋章
     * 
     * @param userMedal 用户勋章
     * @return 结果
     */
    @Override
    public int updateUserMedal(UserMedal userMedal)
    {
        return userMedalMapper.updateUserMedal(userMedal);
    }

    /**
     * 批量删除用户勋章
     * 
     * @param ids 需要删除的用户勋章主键
     * @return 结果
     */
    @Override
    public int deleteUserMedalByIds(Long[] ids)
    {
        return userMedalMapper.deleteUserMedalByIds(ids);
    }

    /**
     * 删除用户勋章信息
     * 
     * @param id 用户勋章主键
     * @return 结果
     */
    @Override
    public int deleteUserMedalById(Long id)
    {
        return userMedalMapper.deleteUserMedalById(id);
    }

    @Override
    public List<UserMedal> selectUserMedalsByUserId(Long userId) {
        return userMedalMapper.selectUserMedalsByUserId(userId);
    }

    @Override
    public int checkUserHasMedal(Long userId, Long medalId) {
        return userMedalMapper.checkUserHasMedal(userId, medalId);
    }



}
